<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>

    <script src="js/vue.js"></script>
    <script src="js/axios-0.18.0.js"></script>
</head>
<body>
  <div id="app">
      username: <input type="text" v-model="user.username"> <br>
      password: <input type="password" v-model="user.password"> <br>

      <input type="button" @click="login()" value="登录">
  </div>
</body>
<script>
    new Vue({
        el:"#app",
        data:{
            user:{
                username:"",
                password:""
            }
        },
        methods:{
            login(){
                //发送异步请求，访问8080服务器
                /**
                 * 使用Security的登录，内部走的是UsernamePasswordAuthenticationFilter过滤器
                 *  这个过滤器只拦截 post请求，请求路径必须是/login
                 *  同时内部获取用户名和密码的参数名为 username 和 password，并且要求是key=value&key2=value2形式
                 */
                axios({
                    url:"http://localhost:8080/login",
                    method:"post",
                    params: this.user
                }).then(resp=>{
                    let r = resp.data;
                    let code = r.code;
                    if (code == 200){
                        //登录成功（保存后端返回的token + 跳转页面）
                        localStorage.setItem("security_token",r.data);
                        location.href = "index.html"
                    }else{
                        //登录失败
                        alert(r.msg)
                    }
                })
            }
        }
    })
</script>
</html>